

<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
  <meta charset="utf-8">
  
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <title>thermo_style command &mdash; LIGGGHTS v3.X documentation</title>
  

  
  
  
  

  

  
  
    

  

  
  
    <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
  

  

  
    <link rel="top" title="LIGGGHTS v3.X documentation" href="index.html"/> 

  
  <script src="_static/js/modernizr.min.js"></script>

</head>

<body class="wy-body-for-nav" role="document">

   
  <div class="wy-grid-for-nav">

    
    <nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <div class="wy-side-scroll">
        <div class="wy-side-nav-search">
          

          
            <a href="Manual.html" class="icon icon-home"> LIGGGHTS
          

          
          </a>

          
            
            
              <div class="version">
                v3.X
              </div>
            
          

          
<div role="search">
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
    <input type="text" name="q" placeholder="Search docs" />
    <input type="hidden" name="check_keywords" value="yes" />
    <input type="hidden" name="area" value="default" />
  </form>
</div>

          
        </div>

        <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
          
            
            
              
            
            
              <ul>
<li class="toctree-l1"><a class="reference internal" href="Section_intro.html">1. Introduction</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_start.html">2. Getting Started</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_input_script.html">3. Input Script</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_commands.html">4. Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_gran_models.html">5. Contact models</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_mesh_modules.html">6. Mesh modules</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_packages.html">7. Packages</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_howto.html">8. How-to discussions</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_modify.html">9. Modifying &amp; extending LIGGGHTS(R)-PUBLIC</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_python.html">10. Python interface to LIGGGHTS(R)-PUBLIC</a></li>
<li class="toctree-l1"><a class="reference internal" href="Section_errors.html">11. Errors</a></li>
</ul>

            
          
        </div>
      </div>
    </nav>

    <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <nav class="wy-nav-top" role="navigation" aria-label="top navigation">
        
          <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
          <a href="Manual.html">LIGGGHTS</a>
        
      </nav>


      
      <div class="wy-nav-content">
        <div class="rst-content">
          















<div role="navigation" aria-label="breadcrumbs navigation">

  <ul class="wy-breadcrumbs">
    
      <li><a href="Manual.html">Docs</a> &raquo;</li>
        
      <li>thermo_style command</li>
    
    
      <li class="wy-breadcrumbs-aside">
        
            
            <a href="_sources/thermo_style.txt" rel="nofollow"> View page source</a>
          
          <a href="http://www.cfdem.com"> Website</a>
          
            <a href="Section_commands.html#comm" rel="nofollow"> Commands</a>
            
          
        
      </li>
    
  </ul>

  
  <hr/>
  
</div>
          <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
           <div itemprop="articleBody">
            
  <div class="section" id="thermo-style-command">
<span id="index-0"></span><h1>thermo_style command<a class="headerlink" href="#thermo-style-command" title="Permalink to this headline">¶</a></h1>
<div class="section" id="syntax">
<h2>Syntax<a class="headerlink" href="#syntax" title="Permalink to this headline">¶</a></h2>
<div class="highlight-python"><div class="highlight"><pre>thermo_style style args
</pre></div>
</div>
<ul class="simple">
<li>style = <em>one</em> or <em>multi</em> or <em>custom</em></li>
<li>args = list of arguments for a particular style</li>
</ul>
<pre class="literal-block">
<em>one</em> args = none
<em>multi</em> args = none
<em>custom</em> args = list of attributes
  possible attributes = step, elapsed, elaplong, dt, time,
                        cpu, tpcpu, spcpu, cpuremain, part, cu
                        atoms, ke, erotate,
                        vol, lx, ly, lz, xlo, xhi, ylo, yhi, zlo, zhi,
                     xy, xz, yz, xlat, ylat, zlat,
                     pxx, pyy, pzz, pxy, pxz, pyz,
                     fmax, fnorm,
                     cella, cellb, cellc, cellalpha, cellbeta, cellgamma,
                     c_ID, c_ID[I], c_ID[I][J],
                        f_ID, f_ID[I], f_ID[I][J],
                        v_name
    step = timestep
    elapsed = timesteps since start of this run
    elaplong = timesteps since start of initial run in a series of runs
    dt = timestep size
    time = simulation time
    cpu = elapsed CPU time in seconds
    tpcpu = time per CPU second
    spcpu = timesteps per CPU second
    cpuremain = estimated CPU time remaining in run
    part = which partition (0 to Npartition-1) this is
    cu = timesteps per CPU second
    atoms = # of atoms
    vol = volume
    lx,ly,lz = box lengths in x,y,z
    xlo,xhi,ylo,yhi,zlo,zhi = box boundaries
    xy,xz,yz = box tilt for triclinic (non-orthogonal) simulation boxes
    xlat,ylat,zlat = lattice spacings as calculated by <a class="reference internal" href="lattice.html"><em>lattice</em></a> command
    pxx,pyy,pzz,pxy,pxz,pyz = 6 components of pressure tensor
    fmax = max component of force on any atom in any dimension
    fnorm = length of force vector for all atoms
    cella,cellb,cellc = periodic cell lattice constants a,b,c
    cellalpha, cellbeta, cellgamma = periodic cell angles alpha,beta,gamma
    c_ID = global scalar value calculated by a compute with ID
    c_ID[I] = Ith component of global vector calculated by a compute with ID
    c_ID[I][J] = I,J component of global array calculated by a compute with ID
    f_ID = global scalar value calculated by a fix with ID
    f_ID[I] = Ith component of global vector calculated by a fix with ID
    f_ID[I][J] = I,J component of global array calculated by a fix with ID
    v_name = scalar value calculated by an equal-style variable with name
</pre>
</div>
<div class="section" id="examples">
<h2>Examples<a class="headerlink" href="#examples" title="Permalink to this headline">¶</a></h2>
<div class="highlight-python"><div class="highlight"><pre>thermo_style one
thermo_style custom step v_abc
</pre></div>
</div>
</div>
<div class="section" id="description">
<h2>Description<a class="headerlink" href="#description" title="Permalink to this headline">¶</a></h2>
<p>Set the style and content for printing thermodynamic data to the
screen and log file.</p>
<p>Style <em>one</em> prints a one-line summary of thermodynamic info that is
the equivalent of &#8220;thermo_style custom step atoms ke cpu&#8221;.
The line contains only numeric values.</p>
<p>Style <em>multi</em> prints a multiple-line listing of thermodynamic info
that is the equivalent of &#8220;thermo_style custom step atoms ke cpu&#8221;.
The listing contains
numeric values and a string ID for each quantity.</p>
<p>Style <em>custom</em> is the most general setting and allows you to specify
which of the keywords listed above you want printed on each
thermodynamic timestep.  Note that the keywords c_ID, f_ID, v_name are
references to <a class="reference internal" href="compute.html"><em>computes</em></a>, <a class="reference internal" href="fix.html"><em>fixes</em></a>, and
equal-style <a class="reference internal" href="variable.html"><em>variables</em></a> that have been defined
elsewhere in the input script or can even be new styles which users
have added to LIGGGHTS(R)-PUBLIC (see the <a class="reference internal" href="Section_modify.html"><em>Section_modify</em></a>
section of the documentation).  Thus the <em>custom</em> style provides a
flexible means of outputting essentially any desired quantity as a
simulation proceeds.</p>
<p>All styles except <em>custom</em> have <em>vol</em> appended to their list of
outputs if the simulation box volume changes during the simulation.</p>
<p>The values printed by the various keywords are instantaneous values,
calculated on the current timestep.  Time-averaged quantities, which
include values from previous timesteps, can be output by using the
f_ID keyword and accessing a fix that does time-averaging such as the
<a class="reference internal" href="fix_ave_time.html"><em>fix ave/time</em></a> command.</p>
<p>Options invoked by the <a class="reference internal" href="thermo_modify.html"><em>thermo_modify</em></a> command can
be used to set the one- or multi-line format of the print-out, the
normalization of thermodynamic output (total values versus per-atom
values for extensive quantities (ones which scale with the number of
atoms in the system), and the numeric precision of each printed value.</p>
<div class="admonition warning">
<p class="first admonition-title">Warning</p>
<p class="last">When you use a &#8220;thermo_style&#8221; command, all
thermodynamic settings are restored to their default values, including
those previously set by a <a class="reference internal" href="thermo_modify.html"><em>thermo_modify</em></a> command.
Thus if your input script specifies a thermo_style command, you should
use the thermo_modify command after it.</p>
</div>
<hr class="docutils" />
<p>The <em>step</em>, <em>elapsed</em>, and <em>elaplong</em> keywords refer to timestep
count.  <em>Step</em> is the current timestep, or iteration count when a
<code class="xref doc docutils literal"><span class="pre">minimization</span></code> is being performed.  <em>Elapsed</em> is the
number of timesteps elapsed since the beginning of this run.
<em>Elaplong</em> is the number of timesteps elapsed since the beginning of
an initial run in a series of runs.  See the <em>start</em> and <em>stop</em>
keywords for the <a class="reference internal" href="run.html"><em>run</em></a> for info on how to invoke a series of
runs that keep track of an initial starting time.  If these keywords
are not used, then <em>elapsed</em> and <em>elaplong</em> are the same value.</p>
<p>The <em>dt</em> keyword is the current timestep size in time
<a class="reference internal" href="units.html"><em>units</em></a>.  The <em>time</em> keyword is the current elapsed
simulation time, also in time <a class="reference internal" href="units.html"><em>units</em></a>, which is simply
(step*dt) if the timestep size has not changed and the timestep has
not been reset.  If the timestep has changed (e.g. via <a class="reference internal" href="fix_dt_reset.html"><em>fix dt/reset</em></a>) or the timestep has been reset (e.g. via
the &#8220;reset_timestep&#8221; command), then the simulation time is effectively
a cummulative value up to the current point.</p>
<p>The <em>cpu</em> keyword is elapsed CPU seconds since the beginning of this
run.  The <em>tpcpu</em> and <em>spcpu</em> keywords are measures of how fast your
simulation is currently running.  The <em>tpcpu</em> keyword is simulation
time per CPU second, where simulation time is in time
<a class="reference internal" href="units.html"><em>units</em></a>.  E.g. for metal units, the <em>tpcpu</em> value would be
picoseconds per CPU second.  The <em>spcpu</em> keyword is the number of
timesteps per CPU second.  Both quantities are on-the-fly metrics,
measured relative to the last time they were invoked.  Thus if you are
printing out thermodyamic output every 100 timesteps, the two keywords
will continually output the time and timestep rate for the last 100
steps.  The <em>tpcpu</em> keyword does not attempt to track any changes in
timestep size, e.g. due to using the <a class="reference internal" href="fix_dt_reset.html"><em>fix dt/reset</em></a>
command.</p>
<p>The <em>cpuremain</em> keyword estimates the CPU time remaining in the
current run, based on the time elapsed thus far.  It will only be a
good estimate if the CPU time/timestep for the rest of the run is
similar to the preceding timesteps.  On the initial timestep the value
will be 0.0 since there is no history to estimate from.  For a
minimization run performed by the &#8220;minimize&#8221; command, the estimate is
based on the <em>maxiter</em> parameter, assuming the minimization will
proceed for the maximum number of allowed iterations.</p>
<p>The <em>part</em> keyword is useful for multi-replica or multi-partition
simulations to indicate which partition this output and this file
corresponds to, or for use in a <a class="reference internal" href="variable.html"><em>variable</em></a> to append to
a filename for output specific to this partition.  See <a class="reference internal" href="Section_start.html#start-7"><span>Section_start 7</span></a> of the manual for details on running in
multi-partition mode.</p>
<p>The <em>fmax</em> and <em>fnorm</em> keywords are useful for monitoring the progress
of an <code class="xref doc docutils literal"><span class="pre">energy</span> <span class="pre">minimization</span></code>.  The <em>fmax</em> keyword
calculates the maximum force in any dimension on any atom in the
system, or the infinity-norm of the force vector for the system.  The
<em>fnorm</em> keyword calculates the 2-norm or length of the force vector.</p>
<p>The keywords <em>cella</em>, <em>cellb</em>, <em>cellc</em>, <em>cellalpha</em>, <em>cellbeta</em>,
<em>cellgamma</em>, correspond to the usual crystallographic quantities that
define the periodic unit cell of a crystal.  See <a class="reference internal" href="Section_howto.html#howto-7"><span>this section</span></a> of the doc pages for a geometric
description of triclinic periodic cells, including a precise defintion
of these quantities in terms of the internal LIGGGHTS(R)-PUBLIC cell dimensions
<em>lx</em>, <em>ly</em>, <em>lz</em>, <em>yz</em>, <em>xz</em>, <em>xy</em>.</p>
<hr class="docutils" />
<p>The <em>c_ID</em> and <em>c_ID[I]</em> and <em>c_ID[I][J]</em> keywords allow global
values calculated by a compute to be output.  As discussed on the
<a class="reference internal" href="compute.html"><em>compute</em></a> doc page, computes can calculate global,
per-atom, or local values.  Only global values can be referenced by
this command.  However, per-atom compute values can be referenced in a
<a class="reference internal" href="variable.html"><em>variable</em></a> and the variable referenced by thermo_style
custom, as discussed below.</p>
<p>The ID in the keyword should be replaced by the actual ID of a compute
that has been defined elsewhere in the input script.  See the
<a class="reference internal" href="compute.html"><em>compute</em></a> command for details.  If the compute calculates
a global scalar, vector, or array, then the keyword formats with 0, 1,
or 2 brackets will reference a scalar value from the compute.</p>
<p>Note that some computes calculate &#8220;intensive&#8221; global quantities like
temperature; others calculate &#8220;extensive&#8221; global quantities like
kinetic energy that are summed over all atoms in the compute group.
Intensive quantities are printed directly without normalization by
thermo_style custom.  Extensive quantities may be normalized by the
total number of atoms in the simulation (NOT the number of atoms in
the compute group) when output, depending on the <a class="reference internal" href="thermo_modify.html"><em>thermo_modify norm</em></a> option being used.</p>
<p>The <em>f_ID</em> and <em>f_ID[I]</em> and <em>f_ID[I][J]</em> keywords allow global
values calculated by a fix to be output.  As discussed on the
<a class="reference internal" href="fix.html"><em>fix</em></a> doc page, fixes can calculate global, per-atom, or
local values.  Only global values can be referenced by this command.
However, per-atom fix values can be referenced in a
<a class="reference internal" href="variable.html"><em>variable</em></a> and the variable referenced by thermo_style
custom, as discussed below.</p>
<p>The ID in the keyword should be replaced by the actual ID of a fix
that has been defined elsewhere in the input script.  See the
<a class="reference internal" href="fix.html"><em>fix</em></a> command for details.  If the fix calculates a global
scalar, vector, or array, then the keyword formats with 0, 1, or 2
brackets will reference a scalar value from the fix.</p>
<p>Note that some fixes calculate &#8220;intensive&#8221; global quantities like
timestep size; others calculate &#8220;extensive&#8221; global quantities like
energy that are summed over all atoms in the fix group.  Intensive
quantities are printed directly without normalization by thermo_style
custom.  Extensive quantities may be normalized by the total number of
atoms in the simulation (NOT the number of atoms in the fix group)
when output, depending on the <a class="reference internal" href="thermo_modify.html"><em>thermo_modify norm</em></a>
option being used.</p>
<p>The <em>v_name</em> keyword allow the current value of a variable to be
output.  The name in the keyword should be replaced by the variable
name that has been defined elsewhere in the input script.  Only
equal-style variables can be referenced.  See the
<a class="reference internal" href="variable.html"><em>variable</em></a> command for details.  Variables of style
<em>equal</em> can reference per-atom properties or thermodynamic keywords,
or they can invoke other computes, fixes, or variables when evaluated,
so this is a very general means of creating thermodynamic output.</p>
<p>Note that equal-style variables are assumed to be &#8220;intensive&#8221; global
quantities, which are thus printed as-is, without normalization by
thermo_style custom.  You can include a division by &#8220;natoms&#8221; in the
variable formula if this is not the case.</p>
</div>
<hr class="docutils" />
<div class="section" id="restrictions">
<h2>Restrictions<a class="headerlink" href="#restrictions" title="Permalink to this headline">¶</a></h2>
<p>This command must come after the simulation box is defined by a
<a class="reference internal" href="read_data.html"><em>read_data</em></a>, <a class="reference internal" href="read_restart.html"><em>read_restart</em></a>, or
<a class="reference internal" href="create_box.html"><em>create_box</em></a> command.</p>
</div>
<div class="section" id="related-commands">
<h2>Related commands<a class="headerlink" href="#related-commands" title="Permalink to this headline">¶</a></h2>
<p><a class="reference internal" href="thermo.html"><em>thermo</em></a>, <a class="reference internal" href="thermo_modify.html"><em>thermo_modify</em></a>,
<a class="reference internal" href="fix_modify.html"><em>fix_modify</em></a>,</p>
</div>
<div class="section" id="default">
<h2>Default<a class="headerlink" href="#default" title="Permalink to this headline">¶</a></h2>
<div class="highlight-python"><div class="highlight"><pre>thermo_style one
</pre></div>
</div>
</div>
</div>


           </div>
           <div class="articleComments">
            
           </div>
          </div>
          <footer>
  

  <hr/>

  <div role="contentinfo">
    <p>
        &copy; Copyright 2016, DCS Computing GmbH, JKU Linz and Sandia Corporation.

    </p>
  </div>
  Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. 

</footer>

        </div>
      </div>

    </section>

  </div>
  


  

    <script type="text/javascript">
        var DOCUMENTATION_OPTIONS = {
            URL_ROOT:'./',
            VERSION:'v3.X',
            LANGUAGE:'None',
            COLLAPSE_INDEX:false,
            FILE_SUFFIX:'.html',
            HAS_SOURCE:  true,
            SOURCELINK_SUFFIX: ''
        };
    </script>
      <script type="text/javascript" src="_static/jquery.js"></script>
      <script type="text/javascript" src="_static/underscore.js"></script>
      <script type="text/javascript" src="_static/doctools.js"></script>

  

  
  
    <script type="text/javascript" src="_static/js/theme.js"></script>
  

  
  
  <script type="text/javascript">
      jQuery(function () {
          SphinxRtdTheme.StickyNav.enable();
      });
  </script>
   

</body>
</html>